﻿using System.Runtime.InteropServices;

namespace SilverlightViewport.Common.Interop
{
    [ComImport, InterfaceType(ComInterfaceType.InterfaceIsIUnknown), 
     Guid("00000100-0000-0000-C000-000000000046")]
    public interface IEnumUnknown
    {
        [PreserveSig]
        int Next([In] uint celt, [Out, MarshalAs(UnmanagedType.LPArray, ArraySubType = UnmanagedType.IUnknown)] object[] rgelt, out uint pceltFetched);
        [PreserveSig]
        int Skip([In] uint celt);
        [PreserveSig]
        int Reset();
        [PreserveSig]
        int Clone([MarshalAs(UnmanagedType.Interface)] out IEnumUnknown ppEnum);
    }
}
